// pages/user/user.js
let app = getApp().globalData;
Page({

  /**
   * 页面的初始数据
   */
  data: {
    login:false,
    loaded:false,
    name:"",
    url:""
  },
  check(){
    if(wx.getStorageSync('hadAuthed')){
      this.setData({
        login:true
      })
      console.log(app.userInfo);
      let name = app.userInfo.nickName;
      let url = app.avatarUrl;
      this.setData({
        name,
        url
      })
    }else{
      console.log(404);
      this.setData({
        login: false
      })
    }
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {
    this.check();
  },
  getinfo(){
    var that = this;
    wx.showModal({
      cancelText: '账号密码',
      confirmText: '小程序',
      content: '请选择登陆方式',
      title: '登录',
      success: (r) => {
        if(r.confirm){
          wx.showModal({
            title: '温馨提示',
            content: '正在请求获取您的个人信息，以后续方便使用本程序！',
            success(res) {
              new Promise((r,e)=>{
                if (res.confirm) {
                  that.setData({
                    loaded:true
                  })
                  wx.getUserProfile({
                    desc: "获取你的昵称、头像、地区及性别",
                    success: res => {
                      getApp().globalData.userInfo =  res.userInfo;
                      wx.setStorageSync('userInfo', res.userInfo)
                      wx.setStorageSync('hadAuthed', true)
                      // wx.getStorageSync('hadAuthed')
                       //这里可以发起获取token的请求
                      console.log('info',res.userInfo);
                      // 由于 getUserInfo 是网络请求，可能会在 Page.onLoad 之后才返回
                      // 所以此处加入 callback 以防止这种情况
                      // callback && callback(res);
                      r();
                    },
                    fail: res => {
                      //拒绝授权
                      // that.showErrorModal('您拒绝了请求');
                      wx.showToast({
                        title: '授权失败',
                        icon: 'none',
                        duration: 1000
                      })
                      e();
                      return;
                    }
                  })
                } else if (res.cancel) {
                  wx.showToast({
                    title: '授权失败',
                    icon: 'none',
                    duration: 1000
                  })
                  //拒绝授权 showErrorModal是自定义的提示
                  // that.showErrorModal('您拒绝了请求');
                  e();
                  return;
                }
              }).then(()=>{
                that.onLoad();
              }).then(()=>{
                that.setData({
                  loaded:false
                })
              })
            }
          })
        }else if(r.cancel){
          wx:wx.navigateTo({
            url: '../user/login/login',
            routeType: 'routeType',
            success: (result) => {},
            fail: (res) => {},
            complete: (res) => {},
          })
        }
      },
      fail: (res) => {},
      complete: (res) => {},
    })
  },
  cancel(){
    wx.showModal({
      title: '确认退出登录？',
      success: (result) => {
        if(result.confirm){
          wx:wx.removeStorageSync('hadAuthed');
          this.setData({
            login:false,
          })
        }
      },
      fail: (res) => {},
      complete: (res) => {},
    })
  },
  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {
  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {
    this.onLoad();
    if (typeof this.getTabBar === 'function' && this.getTabBar()) {
      const page = getCurrentPages().pop();
      this.getTabBar().setData({
        value: '/' + page.route
      })
    }
  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})